import Vue from 'vue'
// 引入app作为全局最大的父组件
import App from './App.vue'

import axios from 'axios'
Vue.prototype.$axios=axios
// 引入routes注入到vue
import vuerouter from "vue-router";
Vue.use(vuerouter)
// 是指路由重复。
const originalPush = vuerouter.prototype.push;
// 修改 原型对象中的push方法vuerouter
vuerouter.prototype.push = function push(location) {
    return originalPush.call(this, location).catch(err => err)
};
// 注册router
import  router  from './课件/router/router';
// 注册store
import store from './js/store'
// 注册ElementUI
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI)
Vue.config.productionTip = false

// 全局自定义指令
Vue.directive('focus', (e) => {
  e.style.backgroundColor = 'aquamarine'
  e.style.color = 'red'
  e.style.fontSize = '100px'

})
// 引入 echarts 核心模块，核心模块提供了 echarts 使用必须要的接口。
import * as echarts from 'echarts/core';
// 引入柱状图图表，图表后缀都为 Chart
import { BarChart } from 'echarts/charts';
// 引入提示框，标题，直角坐标系，数据集，内置数据转换器组件，组件后缀都为 Component
import {
  TitleComponent,
  TooltipComponent,
  GridComponent,
  DatasetComponent,
  TransformComponent
} from 'echarts/components';
// 标签自动布局、全局过渡动画等特性
import { LabelLayout, UniversalTransition } from 'echarts/features';
// 引入 Canvas 渲染器，注意引入 CanvasRenderer 或者 SVGRenderer 是必须的一步
import { CanvasRenderer } from 'echarts/renderers';

// 注册必须的组件
echarts.use([
  TitleComponent,
  TooltipComponent,
  GridComponent,
  DatasetComponent,
  TransformComponent,
  BarChart,
  LabelLayout,
  UniversalTransition,
  CanvasRenderer
]);

new Vue({
  store,
  router,
  render: h => h(App),
}).$mount('#app')
